home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-06-25 | 1.1 KB | 49 lines | [TEXT/CWIE] |
- // STL5.cp
- #include <iostream>
- #include <map>
-
- int main()
- {
- int integers[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
- std::string intNames[] = {"zero", "one", "two", "three",
- "four", "five", "six", "seven",
- "eight", "nine", "ten"};
- typedef std::map<int, std::string> MyMap;
- typedef std::vector<int> MyVector;
- MyMap m;
- for (int i = 0; i < 11; ++i)
- {
- m.insert(MyMap::value_type(integers[i], intNames[i]));
- }
- MyVector lhs(integers, integers + 11), rhs(integers, integers + 11);
- std::random_shuffle(lhs.begin(), lhs.end());
- std::random_shuffle(rhs.begin(), rhs.end());
- for (int j = 0; j < 11; ++j)
- {
- int sum = lhs[j] + rhs[j];
- int diff = lhs[j] - rhs[j];
- if (sum < 11)
- {
- std::cout << m[lhs[j]] << " + " << m[rhs[j]] <<
- " = " << m[sum] << std::endl;
- }
- if (diff >= 0)
- {
- std::cout << m[lhs[j]] << " - " << m[rhs[j]] <<
- " = " << m[diff] << std::endl;
- }
- }
- }
- // two + zero = two
- // two - zero = two
- // eight - five = three
- // nine + one = ten
- // nine - one = eight
- // three + two = five
- // three - two = one
- // one + four = five
- // ten - ten = zero
- // zero + seven = seven
- // seven + three = ten
- // seven - three = four
-